package com.hmkj.core.model.my;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;

/**
 * 资产model
 * ......................我佛慈悲......................
 * ......................_oo0oo_.......................
 * .....................o8888888o......................
 * .....................88" . "88......................
 * .....................(| -_- |)......................
 * .....................0\  =  /0......................
 * ...................___/`---'\___....................
 * ..................' \\|     |// '...................
 * ................/ \\|||  :  |||// \.................
 * .............../ _||||| -卍-|||||- \................
 * ..............|   | \\\  -  /// |   |...............
 * ..............| \_|  ''\---/''  |_/ |...............
 * ..............\  .-\__  '-'  ___/-. /...............
 * ............___'. .'  /--.--\  `. .'___.............
 * .........."" '<  `.___\_<|>_/___.' >' ""............
 * ........| | :  `- \`.;`\ _ /`;.`/ - ` : | |.........
 * ........\  \ `_.   \_ __\ /__ _/   .-` /  /.........
 * ....=====`-.____`.___ \_____/___.-`___.-'=====......
 * ......................`=---='.......................
 * ....................................................
 * .................佛祖开光 ,永无BUG...................
 */
@Data
public class AssetsModel {
    /**
     * 总资产
     */
    @ApiModelProperty(value = "总资产")
    private BigDecimal allAssets;
    /**
     * 待收本金
     */
    @ApiModelProperty(value = "待收本金")
    private BigDecimal waitCorpus;
    /**
     * 待收利息
     */
    @ApiModelProperty(value = "待收利息")
    private BigDecimal waitInterest;
    /**
     * 累计收益
     */
    @ApiModelProperty(value = "累计收益")
    private BigDecimal accumulatedIncome;
    /**
     * 可用金额
     */
    @ApiModelProperty(value = "可用金额")
    private BigDecimal available;
    /**
     * 冻结金额
     */
    @ApiModelProperty(value = "冻结金额")
    private BigDecimal freeze;
    /**
     * 利息收益
     */
    @ApiModelProperty(value = "利息收益")
    private BigDecimal accrualIncome;
    /**
     * 红包收益
     */
    @ApiModelProperty(value = "红包收益")
    private BigDecimal redPackageIncome;

    private BigDecimal moneyForThisMonth;

    public AssetsModel() {
        this.waitCorpus = new BigDecimal(0);
        this.waitInterest = new BigDecimal(0);
        this.accumulatedIncome = new BigDecimal(0);
        this.available = new BigDecimal(0);
        this.freeze = new BigDecimal(0);
        this.moneyForThisMonth = new BigDecimal(0);
    }

    public BigDecimal getAllAssets() {
        return waitCorpus.add(waitInterest).add(available).add(freeze);
    }
}
